home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / WORDMISC / MICROSPL.LZH / DOPT.H < prev    next >
Text File  |  1987-10-19  |  5KB  |  204 lines

  1. /*    DOPT:    Option settings for MicroSPELL 1.0
  2.         Spell Checker and Corrector
  3.  
  4.         (C)opyright May 1987 by Daniel Lawrence
  5.         All Rights Reserved
  6. */
  7.  
  8. #ifdef    LATTICE
  9. #undef    LATTICE        /* don't use their definitions...use ours    */
  10. #endif
  11. #ifdef    MSDOS
  12. #undef    MSDOS
  13. #endif
  14. #ifdef    CPM
  15. #undef    CPM
  16. #endif
  17. #ifdef    AMIGA
  18. #undef    AMIGA
  19. #endif
  20. #ifdef    EGA
  21. #undef    EGA
  22. #endif
  23.  
  24. #define    PROGNAME    "MicroSPELL"
  25. #define    VERSION        "1.0"
  26.  
  27. /*    Machine/OS definitions            */
  28.  
  29. #define AMIGA   0                       /* AmigaDOS            */
  30. #define ST520   0                       /* ST520, TOS                   */
  31. #define MSDOS   1                       /* MS-DOS                       */
  32. #define V7      0                       /* V7 UNIX or Coherent or BSD4.2*/
  33. #define    BSD    0            /* UNIX BSD 4.2    and ULTRIX    */
  34. #define    USG    0            /* UNIX system V        */
  35. #define VMS     0                       /* VAX/VMS                      */
  36. #define CPM     0                       /* CP/M-86                      */
  37. #define    FINDER    0            /* Macintosh OS            */
  38. #define CMS     0                       /* IBM VM/CMS                   */
  39.  
  40. /*    Compiler definitions            */
  41. #define MWC86   0    /* marc williams compiler */
  42. #define    LATTICE    0    /* Lattice 2.14 thruough 3.0 compilers */
  43. #define    AZTEC    0    /* Aztec C 3.20e */
  44. #define    MSC    1    /* MicroSoft C compiler version 3 & 4 */
  45. #define TURBO    0    /* Turbo C version 1.00 */
  46.  
  47. /*    Debugging options    */
  48. #define    RAMSIZE    0    /* dynamic RAM memory usage tracking */
  49. #define    RAMSHOW    0    /* auto dynamic RAM reporting */
  50.  
  51. /*    Terminal Output definitions        */
  52.  
  53. #define ANSI    0            /* ANSI escape sequences    */
  54. #define    HP150    0            /* HP150 screen driver        */
  55. #define    HP110    0            /* HP110 screen driver        */
  56. #define    VMSVT    0            /* various VMS terminal entries    */
  57. #define VT52    0                       /* VT52 terminal (Zenith).      */
  58. #define VT100   0                       /* Handle VT100 style keypad.   */
  59. #define RAINBOW 0                       /* Use Rainbow fast video.      */
  60. #define TERMCAP 0                       /* Use TERMCAP                  */
  61. #define    IBMPC    1            /* IBM-PC CGA/MONO/EGA driver    */
  62. #define    DG10    0            /* Data General system/10    */
  63. #define    TIPC    0            /* TI Profesional PC driver    */
  64. #define    Z309    0            /* Zenith 100 PC family    driver    */
  65. #define    MAC    0            /* Macintosh            */
  66. #define    ATARI    0            /* Atari 520/1040ST screen    */
  67. #define IBM3270 0                       /* IBM 3270 terminal device     */
  68.  
  69. /*    Configuration options    */
  70.  
  71. #define    REVSTA    1    /* Status line appears in reverse video        */
  72. #define    COLOR    0    /* color commands and windows            */
  73.  
  74. #define    CRYPT    1    /* file encryption enabled?            */
  75. #define    EMACS    1    /* Allow the use of an editor for replacement scan*/
  76. #define    CMPRS    1    /* main dictionary compression enabled        */
  77.  
  78. #define ASCII    1    /* always using ASCII char sequences for now    */
  79. #define EBCDIC    0    /* later IBM mainfraim versions will use EBCDIC    */
  80.  
  81. /*    System dependant library redefinitions, structures and includes    */
  82.  
  83. #define    FLAG    int
  84.  
  85. #if    TURBO
  86. #undef LATTICE
  87. #define    LATTICE    1
  88. #endif
  89.  
  90. #if    CMS
  91. /* EXIT() seems to not work as documented, while RETURN() does... */
  92. #define    exit(a)    return(a)
  93. #define    fopen    cmsopen
  94. FILE *cmsopen();
  95. #endif
  96.  
  97. #if    AZTEC
  98. #undef    fputc
  99. #undef    fgetc
  100. #undef    fgets
  101. #if    MSDOS
  102. #define    fgetc    a1getc
  103. #define    fgets    a1gets
  104. #else
  105. #define    fgetc    agetc
  106. #define    fgets    agets
  107. #endif
  108. #define    fputc    aputc
  109. #define    int86    sysint
  110. #define    intdos(a, b)    sysint(33, a, b)
  111. #define    inp    inportb
  112. #define    outp    outportb
  113.  
  114. struct XREG {
  115.     int ax,bx,cx,dx,si,di;
  116. };
  117.  
  118. struct HREG {
  119.     char al,ah,bl,bh,cl,ch,dl,dh;
  120. };
  121.  
  122. union REGS {
  123.     struct XREG x;
  124.     struct HREG h;
  125. };
  126. #endif
  127.  
  128. #if    MSDOS & MWC86
  129. #include    <dos.h>
  130. #define    int86(a, b, c)    intcall(b, c, a)
  131. #define    inp    in
  132.  
  133. struct XREG {
  134.     int ax,bx,cx,dx,si,di,ds,es,flags;
  135. };
  136.  
  137. struct HREG {
  138.     char al,ah,bl,bh,cl,ch,dl,dh;
  139.     int ds,es,flags;
  140. };
  141.  
  142. union REGS {
  143.     struct XREG x;
  144.     struct HREG h;
  145. };
  146. #endif
  147.  
  148. #if    MSDOS & MSC
  149. #include    <dos.h>
  150. #include    <memory.h>
  151. #define    peek(a,b,c,d)    movedata(a,b,FP_SEG(c),FP_OFF(c),d)
  152. #define    poke(a,b,c,d)    movedata(FP_SEG(c),FP_OFF(c),a,b,d)
  153. #define    movmem(a, b, c)        memcpy(b, a, c)
  154. #endif
  155.  
  156. #if    MSDOS & LATTICE
  157. #undef    CPM
  158. #undef    LATTICE
  159. #include    <dos.h>
  160. #undef    CPM
  161. #endif
  162.  
  163. #if    VMS
  164. #define    unlink(a)    delete(a)
  165. #endif
  166.  
  167. /*    define memory mapped flag    */
  168.  
  169. #define    MEMMAP    0
  170.  
  171. #if    IBMPC
  172. #undef    MEMMAP
  173. #define    MEMMAP    1
  174. #endif
  175.  
  176. #if    Z309
  177. #undef    MEMMAP
  178. #define    MEMMAP    1
  179. #endif
  180.  
  181. /*    internal constants    */
  182.  
  183. #define    TRUE    1
  184. #define    FALSE    0
  185.  
  186. #define NFILEN  80                      /* # of bytes, file name        */
  187. #define NLINE   256                     /* # of bytes, input line       */
  188. #define    NSTRING    128            /* # of bytes, string buffers    */
  189. #define    MAXLINE    1024            /* max line length of source file */
  190. #define HUGE    1000                    /* Huge number                  */
  191. #define    NCOLORS    8            /* number of supported colors    */
  192. #define    MAXCOM    4000            /* max # of common words    */
  193. #define    MAXSPELL 8            /* max # of files to spell    */
  194. #define    MAXWORDS 10000            /* max # of source words/bucket    */
  195. #define    NBUFSIZ    1024            /* file buffer size for decomp    */
  196.  
  197. /*    exit codes    */
  198.  
  199. #define    EXGOOD        0        /* successfull run!        */
  200. #define    EXMDICT        1        /* missing dictionary        */
  201. #define    EXBADOPT    2        /* bad command line option    */
  202. #define    EXNORAM        3        /* out of RAM            */
  203. #define    EXTEMP        4        /* can't open temp file        */
  204.